.order-detail {
  padding: 20px;
  background-color: #f8f8f8;
  min-height: 100vh;
  
  &-loading, &-error {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 300px;
    color: #999;
    font-size: 28px;
    
    .back-button {
      margin-top: 30px;
      background-color: #f8f8f8;
      color: #666;
      border: 1px solid #ddd;
    }
  }
  
  .detail-card {
    background-color: #fff;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 20px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    
    .card-title {
      font-size: 32px;
      font-weight: bold;
      color: #333;
      margin-bottom: 20px;
      padding-bottom: 16px;
      border-bottom: 1px solid #f0f0f0;
    }
    
    .order-items {
      margin-bottom: 20px;
      
      .order-item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 16px 0;
        border-bottom: 1px solid #f5f5f5;
        
        &:last-child {
          border-bottom: none;
        }
        
        .item-name {
          font-size: 28px;
          color: #333;
          flex: 1;
        }
        
        .item-info {
          display: flex;
          align-items: center;
          
          .item-quantity {
            font-size: 26px;
            color: #666;
            margin-right: 20px;
          }
          
          .item-price {
            font-size: 28px;
            color: #333;
            font-weight: bold;
            min-width: 100px;
            text-align: right;
          }
        }
      }
    }
    
    .order-summary {
      background-color: #f9f9f9;
      padding: 20px;
      border-radius: 8px;
      margin-bottom: 20px;
      
      .summary-row {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 12px;
        
        &:last-child {
          margin-bottom: 0;
        }
        
        &.total {
          padding-top: 12px;
          margin-top: 12px;
          border-top: 1px dashed #ddd;
          
          .label, .value {
            font-weight: bold;
            color: #333;
            font-size: 30px;
          }
          
          .value {
            color: #ff6b00;
          }
        }
        
        &.earned {
          .value {
            color: #ff6b00;
          }
        }
        
        .label {
          font-size: 26px;
          color: #666;
        }
        
        .value {
          font-size: 26px;
          color: #333;
        }
      }
    }
    
    .order-note {
      background-color: #fff9f0;
      padding: 16px;
      border-radius: 8px;
      border: 1px dashed #ffcc80;
      
      .note-label {
        font-size: 26px;
        color: #ff9800;
        margin-bottom: 8px;
        display: block;
      }
      
      .note-content {
        font-size: 26px;
        color: #666;
        line-height: 1.5;
      }
    }
  }
  
  .action-buttons {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 20px;
    
    .cancel-button, .confirm-button, .complete-button, .back-button {
      height: 88px;
      line-height: 88px;
      font-size: 30px;
      border-radius: 44px;
    }
    
    .cancel-button {
      background-color: #fff;
      color: #ff3b30;
      border: 1px solid #ff3b30;
    }
    
    .confirm-button {
      background-color: #007aff;
      color: #fff;
    }
    
    .complete-button {
      background-color: #34c759;
      color: #fff;
    }
    
    .back-button {
      background-color: #f8f8f8;
      color: #666;
      border: 1px solid #ddd;
    }
  }
  
  .offline-warning {
    background-color: rgba(255, 59, 48, 0.1);
    padding: 16px;
    border-radius: 8px;
    text-align: center;
    margin-bottom: 20px;
    
    text {
      font-size: 26px;
      color: #ff3b30;
    }
  }
} 